package com.xbongbong.saas.domain.dao;

import com.xbongbong.saas.domain.entity.SmsStatusEntity;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;



/**
 * @description:
 * @Author: hongxiao
 * @date: 2019-01-12 17:26
 */
public interface SmsStatusDao {
    Integer insert(SmsStatusEntity smsStatus);
    Integer update(SmsStatusEntity smsStatus);


    Integer deleteByKey(@Param("key") Long key, @Param("corpid")String corpid);
    SmsStatusEntity getByKey(@Param("key") Long key, @Param("corpid") String corpid);

    List<SmsStatusEntity> findEntitys(@Param("param")Map<String ,Object> param);
    Integer getEntitysCount(@Param("param")Map<String ,Object>  param);
    List<SmsStatusEntity> getByIdIn(@Param("param")Map<String ,Object>  param);

    Integer insertBatch(@Param("list") List<SmsStatusEntity> list);
    Integer updateBatchForStatus(@Param("param")Map<String ,Object> param);

    void updateBatch(@Param("list") List<SmsStatusEntity> list);

    Integer cancelByIdIn(@Param("param") Map<String ,Object> param);

    /**
     * 根据状态列表获取短信状态数量
     * @param param 入参
     * @return
     * @throws
     *
     * @author hongxiao
     * @date: 2019-01-25 20:40
     * @since v1.0
     * @version v1.0
     */
    List<Map<String, Object>> getCountsByStatusIn(@Param("param")Map<String ,Object> param);
}
